package com.telit.firecommand.model.cityVisualization;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.telit.firecommand.dto.FireDisposalInfoDTO;
import com.telit.firecommand.dto.MultimediaDTO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;


/**
 * QryFireDetailModel
 *
 * @author yuezhuang
 * @since 2023-03-16
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "QryFireDetailModel", description = "查询火情详情model")
public class QryFireDetailModel implements Serializable {

    private static final long serialVersionUID = -1L;

    @ApiModelProperty(value = "火情ID", required = true)
    private Long id;

    @ApiModelProperty(value = "火情名称")
    private String fireName;

    @ApiModelProperty(value = "火情位置地址描述")
    private String detailAddress;

    @ApiModelProperty(value = "经度")
    private String longitude;

    @ApiModelProperty(value = "纬度")
    private String latitude;

    @ApiModelProperty(value = "火情联系人")
    private String finderName;

    @ApiModelProperty(value = "火情联系人手机号")
    private String finderMobile;

    @ApiModelProperty(value = "火情上报时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8")
    private Date findTime;

    @ApiModelProperty(value = "状态")
    private String status;

    @ApiModelProperty(value = "状态名称")
    private String statusName;

    @ApiModelProperty(value = "图片集合")
    private List<MultimediaDTO> imgList;

    @ApiModelProperty(value = "视频集合")
    private List<MultimediaDTO> videoList;

    @ApiModelProperty(value = "音频集合")
    private List<MultimediaDTO> audioList;

    @ApiModelProperty(value = "其他文件集合")
    private List<MultimediaDTO> docList;

    @ApiModelProperty(value = "火情处置进展记录")
    private List<FireDisposalInfoDTO> fireDisposalList;

}
